Conventional telephone conversations take place over a circuit switched network. A circuit-switched network involves a dedicated physical path for a single connection between two end-points for the duration of the connection. In the Public Switched Telephone Network (PSTN), a telephone service provider dedicates a physical path between two end-points to a called number for the duration of a call.
In contrast to circuit switched networks, packet switched networks can be used to transmit telephone calls without requiring a dedicated connection, which leads to reduced costs. Packet switched networks typically use protocols to divide messages or data into packets. Division into packets allows each packet to be transmitted individually. In most packet switched networks, packets are allowed to follow different routes to a destination. After the packets arrive at the destination, they can be recompiled into the original message. An example packet switched network is the global computing network often referred to as the Internet.
Example packet switched networks may use Transmission Control Protocol/Internet Protocol (TCP/IP), X.25, and Frame Relay protocols. In contrast to circuit switched networks that were conventionally used for real-time communications, packet switching allows for delays in transmission, and provides extra control such as retransmission of data, recognition of duplicate messages, flow control mechanisms, etc. In general, packet switched networks provide a robust system for information transfer. Additionally, packet switched networks provide a low cost solution for information transfer since it does not require dedicated leased paths between endpoints.
Improvements in communications and computing technologies allow conventional real-time applications over a packet switched network. For example, in a voice over Internet Protocol (VoIP) network, audio phone information is converted from analog to digital format and sent through a packet switched network. This allows for delivery of audio information at a much lower monetary cost than through a dedicated PSTN circuit, however it has an associated cost in the quality of the communication.
The fundamental transport mechanism for voice-over-packet telecommunication systems is data packets, which are generated at a transmitter and sent at regular, short intervals to a receiver. A standard voice quality impairment is ‘packet loss’ in which packets from a transmitter do not arrive as expected at the receiver. Impairments may be any degradation in strength, value, quality, etc., of a media stream.
Packet loss is widely understood to be a primary source of voice quality degradation due to transmission network impairment. Voice-over-packet equipment often uses packet counts for voice quality metrics, such as ‘packets received’, ‘packets lost’, ‘late packets’, ‘early packets’ etc. Various other means have been employed to measure voice quality in telecommunications networks. For linear systems, objective audio measurements such as frequency response and signal-to-noise ratios are typical. To estimate user experience, subjective test methodologies such as ACR (absolute category ranking) are employed. MOS (mean-opinion-scores) is an example of an ACR test, in which users are presented with audio material and make listening judgments about quality on a five-point scale (1-bad, to 5-excellent).
Conventional Voice-over-packet (VOP) systems may use other quality metric methodologies. MOS tests are non-real-time experiments involving human listeners, and are not run directly on revenue-generating calls, although predictions of MOS scores can be made. The use of non-linear, low-bit-rate audio codecs such as an International Telecommunication Union (ITU) standard G.729 means that some traditional measurements of audio quality such as frequency response are not used since linear methods do not characterize a non-linear system.
Packet redundancy and forward error correction (FEC) can be used to compensate for random and bursty packet loss, but these approaches have limitations in real time applications such as VoIP in a real time transport protocol (RTP) environment. Application of packet redundancy or FEC to all VoIP calls consumes valuable bandwidth, particularly when neither packet redundancy or FEC is required. This may also contribute to congestion and therefore increase loss, jitter, delay, reduce MOS scores, etc., if applied in a distributed manner to sessions (more than a certain number) with impaired media streams. The number of sessions that packet redundancy or FEC may be applied is limited by available bandwidth, which is limited in many scenarios. Low-bit-rate audio codecs (coder/decoders) and digital signal processing (DSP) techniques may also be employed to conserve bandwidth in voice communications, but may degrade the quality of a voice signal.
“Adaptive FEC-Based Error Control for Internet Telephony”, by Bolot, Fosse-Parisis and Towsley, 1999, discusses an adaptive spacing of packets to maximize the probability of packet reception and determination of encoding rates to maximize the quality of a transfer subject to a rate constraint.
The Bolot, Fosse-Parisis and Towsley approach aims to optimize a subjective measure as opposed to an objective measure of quality. However this approach does not provide for a centralized, coordinated adaptive assignment of packet redundancy or different levels of FEC to impaired calls. Additionally, this approach does not provide for throttling redundancy or FEC mechanisms once a critical impaired session volume is reached, such as a critical session volume correlating to network congestion. What is needed is a centralized entity to dynamically manage redundancy and error correction in relation to impairments.